CC2530(zigbee)入门开发: 串口收发配置 您所在的位置:网站首页 linux 配置串口 CC2530(zigbee)入门开发: 串口收发配置

CC2530(zigbee)入门开发: 串口收发配置

#CC2530(zigbee)入门开发: 串口收发配置| 来源: 网络整理| 查看: 265

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

一、串口协议介绍

串口传输协议是嵌入式开发里比较常见的传输协议,开发阶段用的最多的方式就是将MCU的调试信息打印到PC机串口终端显示,方便调试错误。

一般传输协议分为两种: 并口和串口。

并口传输协议:指数据的各位同时发送或接收,每个数据位使用单独的一条导线。传输速度快、效率高,但需要的数据线较多,成本高。

串口传输协议:指数据一位接一位地顺 序发送或接收。需要的数据线少,成本低,但传输速度慢,效率低。

CC2530一共有两个串口通信接口,分别是USART0和USART1,它们能够配置成异步UART模式或者同步SPI模式。

两个USART接口具有相同的功能,通过PERCFG寄存器可以设置两个USART接口对应外部I/O引脚的映射关系:

位置1:RX0 --- P0_2 TX0 --- P0_3 RX1 --- P0_5 TX1 --- P0_4 位置2:RX0 --- P1_4 TX0 --- P1_5 RX1 --- P1_7 TX1 --- P1_6 复制代码

对每个USART串口通信编程,本质是设置相关的5个寄存器:

UxCSR: USARTx的控制和状态寄存器。 UxUCR: USARTx的UART控制寄存器。 UxGCR: USARTx的通用控制寄存器。 UxDBUF:USARTx的接收/发送数据缓冲寄存器。 UxBAUD:USARTx的波特率控制寄存器。 复制代码

在与PC机进行串口通信的时候是,通常需要借助USB转TTL芯片进行电压转换。 所以,在学习串口编程之前,先认识两种电平:TTL电平和RS232电平

TTL电平: 逻辑0----小于0.8V 逻辑1----大于2.4V。 RS232电平: 逻辑0----5~15V 逻辑1---- -5~-15V。 复制代码

串口通信过程中,速度的指标由波特率表示。

常见的波特率设置表如下: image.png

计算波特率的方法: CC2530的波特率由BAUD_E和BAUD_M共同决定:

image.png

二、原理图数据手册分析

image.png

image.png

image.png

image.png

image.png

三、串口配置代码示例 3.1 编写串口初始化函数,实现串口字符串发送 (CPU频率在16MHZ下,波特率的为9600) #include #include //定义LED灯的端口 #define LED1 P1_2 #define LED2 P1_3 //定义KEY按键的端口 #define KEY1 P1_0 //定义按键为P1_0口控制 #define KEY2 P1_1 //定义按键为P1_1口控制 /* 函数功能:LED灯IO口初始化 硬件连接:LED1-->P1_2 , LED2-->P1_3 */ void LED_Init(void) { P1DIR |=0x3P1_1 */ void KEY_Init(void) { P1SEL&=~(0x3


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有